The present invention relates generally to the duplication of a computer system, and more particularly, to duplicating a computer system where each duplicate has a unique identifier.
In the computer industry, security is becoming more and more of an important issue. Uniquely identifying individual computer systems in a network provides a strategic advantage when addressing the issue of security. Many corporate entities select their computer platform based principally on the security features provided. Windows NT is one example of a computer operating system having superior security features. At the heart of most security features is a Security IDentification code (SID) embedded within the operating system. In the Windows NT operating system, the SID is generated when the operating system is first installed. The SID uniquely identifies the computer system on which the operating system is installed and allows network accessibility to be securely administered for that computer system. Other operating systems may make use of a similar unique identifier for a similar purpose.
One disadvantage of employing a unique identifier for each computer system is that it creates a problem for manufacturers of computer systems. To compete most effectively, manufacturers must be able to mass produce the computer systems that they sell. Manufacturers are at a serious disadvantage if they must individually install an operating system on each computer system they sell. Manufacturers prefer to configure a master computer system, including an installed operating system, and then duplicate or xe2x80x9cclonexe2x80x9d the master computer system. Most often, the hard disk drive of the master computer system is duplicated and those duplicates are installed in other computer systems which are then sold. In this way, manufacturers can produce a large number of computer systems without having to individually install the operating system on every one. However, as noted above, unique identifiers are typically generated when the operating system is installed. If the hard disk drive from the master computer system is duplicated, the unique identifier generated when the master computer system was configured is also duplicated. In the past, this situation has made it difficult for computer system manufacturers to generate many similarly configured computer systems without having to individually install the operating system on each computer system.
Other attempts to address that problem have not provided an ideal solution. For example. one attempted solution is to deliver the computer systems with the operating system uninstalled. However, installing an operating system on a new computer is a very complex task, and most consumers dislike having to perform complex installation procedures. Moreover, the manufacturer loses some control over the installed state of the operating system if the installation is performed by the consumer rather than the manufacturer. For those reasons, this solution is undesirable.
Accordingly, a need exists for a mechanism that allows a master computer system, having a unique identifier embedded within the master computer system, to be duplicated or cloned and which provides for the generation of new unique identifiers on each clone or duplicated computer system.
The present invention addresses the above identified needs by providing a mechanism that enables a master computer system having a unique identifier to be more easily duplicated. The mechanism first prepares the master computer system for duplication. Embedded on the master computer system is a unique identifier created when the operating system was installed. Preparing the master computer system for duplication involves configuring the master computer system to execute a startup program on the next boot-up sequence. The startup program is resident on the master computer system, and may have two components, as discussed below. The master computer system is then shut down.
The master computer system may now be duplicated. For example, the hard disk drive of the master computer system may be removed and installed in a machine designed to create many identical copies of the hard disk drive. Those identical copies are then installed in other computer systems similar to the master computer system. In this manner, many computer systems may be easily created that mirror the configuration of the master computer system. For this discussion, those computer systems are termed xe2x80x9cclonesxe2x80x9d of the master computer system.
Each of the clones may then be sold and delivered to a customer. Because the clones include copies of the master computer hard disk drive, each of the clones is also configured to execute the startup program during the first boot-up sequence. Consequently, the first time a clone computer system is powered up by the consumer, the startup program is executed.
In accordance with one aspect of the invention, the startup program includes an ID changer component. When the clone computer system is first powered up, the ID changer component executes first and very early in the boot-up sequence. The ID changer component searches a registration database contained within the operating system for the unique identifier created when the operating system was installed. It should be apparent that when the operating system was initially installed on the master computer system a unique identifier was created and stored. When the master computer system was cloned, each of the clones included the same unique identifier. Accordingly, the ID changer reads the unique identifier that already exists on the clone computer system. The ID changer also creates a new unique identifier, and then replaces the old unique identifier with the new unique identifier.
In accordance with another aspect of the invention, replacing the old unique identifier includes locating all instances of the old unique identifier stored in the registration database and replacing them with the new unique identifier.
In accordance with yet another aspect of the invention, replacing the old unique identifier also includes identifying any computer files stored on the hard disk drive that have information related to the old unique identifier, such as access permissions, and modifying that information in accordance with the new unique identifier.
In accordance with yet still other aspects of the invention, the startup program includes a setup wizard component that is executed to finish configuring the clone computer system in accordance with the customer""s personal information. A wizard is an interactive utility that guides a user through a potentially complex task, typically through a series of question and answer dialog boxes. The setup wizard may be the same setup routine used to install the operating system in the first instance, but, by using a particular switch, only performs a limited subset of the installation functions, such as prompting the user for personal login information, company information, and the like.
After the setup wizard is finished, setup of the clone computer system is complete. The clone computer system reflects its own unique identifier, and the customer was spared the burden of having to perform a complete installation of the operating system.